#include "LED.h"

const uint16_t LEDS = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;
const uint16_t LED[4] = {GPIO_Pin_12, GPIO_Pin_13, GPIO_Pin_14, GPIO_Pin_15};

void LEDInit(void) {
    GPIO_InitTypeDef gpio;
    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE);
    GPIO_StructInit(&gpio);
    gpio.GPIO_Mode = GPIO_Mode_OUT;
    gpio.GPIO_Pin = LEDS;
    gpio.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOD, &gpio);
    LEDOnAll();
}

void LEDOffAll(void){
    GPIO_ResetBits(GPIOD, LEDS);
}

void LEDOnAll(void){
    GPIO_SetBits(GPIOD, LEDS);
}

void LEDOn(int x){
    GPIO_SetBits(GPIOD, LED[x]);
}

void LEDOff(int x){
    GPIO_ResetBits(GPIOD, LED[x]);
}

